package com.study.easyexcel.api.converter;

import com.alibaba.excel.converters.Converter;
import com.study.easyexcel.api.annotation.ConverterConfiguration;

import java.lang.reflect.Field;

/**
 * 识别可配置的字段转换器，可将转换列表的配置延迟到业务执行时设置，而不再局限于使用枚举或者常量来实现转换。
 * 如：从业务的字典模块获取转换列表
 *
 * @author yuhuan
 * @date 2024/1/11
 */
public interface FlexibleConverter<T> extends Converter<T> {

    default boolean checkFieldBusinessConverter(Field field) {
        return field.isAnnotationPresent(ConverterConfiguration.class);
    }
}
